<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.20"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>The small3d library: small3d::SceneObject Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="customdoxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo_s.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">The small3d library
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.20 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacesmall3d.html">small3d</a></li><li class="navelem"><a class="el" href="classsmall3d_1_1_scene_object.html">SceneObject</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classsmall3d_1_1_scene_object-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">small3d::SceneObject Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>An object that appears on the 3D scene. It is made up of a <a class="el" href="classsmall3d_1_1_model.html" title="A 3D model. It can be loaded from a WavefrontFile or GlbFile. It can also be constructed procedurally...">Model</a>, together with information for positioning, rotation and collision detection. Skeletal animation is supported for models loaded from glTF files. A constructor that loads multiple Wavefront files to construct a frame-based animation sequence is also provided.  
 <a href="classsmall3d_1_1_scene_object.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_scene_object_8hpp_source.html">SceneObject.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a1bd665f32145f9b16fc89df98c8713a9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a1bd665f32145f9b16fc89df98c8713a9">SceneObject</a> (const std::string name, const std::string modelPath, const std::string &amp;modelMeshName, const uint32_t boundingBoxSubdivisions=0)</td></tr>
<tr class="memdesc:a1bd665f32145f9b16fc89df98c8713a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">File-loading constructor, supporting Wavefront and glTF .glb files.  <a href="classsmall3d_1_1_scene_object.html#a1bd665f32145f9b16fc89df98c8713a9">More...</a><br /></td></tr>
<tr class="separator:a1bd665f32145f9b16fc89df98c8713a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e9dfda6e679bbacce88ffdb63685e7e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a2e9dfda6e679bbacce88ffdb63685e7e">SceneObject</a> (const std::string name, const std::string modelPath, const int numFrames=1, const int startFrameIndex=1, const uint32_t boundingBoxSubdivisions=0)</td></tr>
<tr class="memdesc:a2e9dfda6e679bbacce88ffdb63685e7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wavefront-only (.obj) loading constructor that also supports loading frame-based animation.  <a href="classsmall3d_1_1_scene_object.html#a2e9dfda6e679bbacce88ffdb63685e7e">More...</a><br /></td></tr>
<tr class="separator:a2e9dfda6e679bbacce88ffdb63685e7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ec4802e84b93ec67e858998e6ae2773"><td class="memItemLeft" align="right" valign="top"><a id="a6ec4802e84b93ec67e858998e6ae2773"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a6ec4802e84b93ec67e858998e6ae2773">~SceneObject</a> ()=default</td></tr>
<tr class="memdesc:a6ec4802e84b93ec67e858998e6ae2773"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:a6ec4802e84b93ec67e858998e6ae2773"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a990a1b6f6f3ab08fd71f5c4a220afc4c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classsmall3d_1_1_model.html">Model</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a990a1b6f6f3ab08fd71f5c4a220afc4c">getModel</a> ()</td></tr>
<tr class="memdesc:a990a1b6f6f3ab08fd71f5c4a220afc4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the object's model.  <a href="classsmall3d_1_1_scene_object.html#a990a1b6f6f3ab08fd71f5c4a220afc4c">More...</a><br /></td></tr>
<tr class="separator:a990a1b6f6f3ab08fd71f5c4a220afc4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae18cf681f49f719fa77f9b83bdb88da8"><td class="memItemLeft" align="right" valign="top">const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#ae18cf681f49f719fa77f9b83bdb88da8">getName</a> () const</td></tr>
<tr class="memdesc:ae18cf681f49f719fa77f9b83bdb88da8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of the object.  <a href="classsmall3d_1_1_scene_object.html#ae18cf681f49f719fa77f9b83bdb88da8">More...</a><br /></td></tr>
<tr class="separator:ae18cf681f49f719fa77f9b83bdb88da8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21bd126617420837019165e892b1ff6b"><td class="memItemLeft" align="right" valign="top"><a id="a21bd126617420837019165e892b1ff6b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a21bd126617420837019165e892b1ff6b">startAnimating</a> ()</td></tr>
<tr class="memdesc:a21bd126617420837019165e892b1ff6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start animating the object. <br /></td></tr>
<tr class="separator:a21bd126617420837019165e892b1ff6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a005d922b169d1922f2f28402cd7a0cf6"><td class="memItemLeft" align="right" valign="top"><a id="a005d922b169d1922f2f28402cd7a0cf6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a005d922b169d1922f2f28402cd7a0cf6">stopAnimating</a> ()</td></tr>
<tr class="memdesc:a005d922b169d1922f2f28402cd7a0cf6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stop animating the object. <br /></td></tr>
<tr class="separator:a005d922b169d1922f2f28402cd7a0cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5df12246f187a1660fc54a14e6d7c96d"><td class="memItemLeft" align="right" valign="top"><a id="a5df12246f187a1660fc54a14e6d7c96d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a5df12246f187a1660fc54a14e6d7c96d">resetAnimation</a> ()</td></tr>
<tr class="memdesc:a5df12246f187a1660fc54a14e6d7c96d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the animation sequence (go to the first frame) <br /></td></tr>
<tr class="separator:a5df12246f187a1660fc54a14e6d7c96d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5597d21a46f7208fc92377f9cc8b631"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#ac5597d21a46f7208fc92377f9cc8b631">setFrameDelay</a> (const int delay)</td></tr>
<tr class="memdesc:ac5597d21a46f7208fc92377f9cc8b631"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the animation speed.  <a href="classsmall3d_1_1_scene_object.html#ac5597d21a46f7208fc92377f9cc8b631">More...</a><br /></td></tr>
<tr class="separator:ac5597d21a46f7208fc92377f9cc8b631"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a722eafd61700974e95cc5df13dedfe"><td class="memItemLeft" align="right" valign="top"><a id="a0a722eafd61700974e95cc5df13dedfe"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a0a722eafd61700974e95cc5df13dedfe">animate</a> ()</td></tr>
<tr class="memdesc:a0a722eafd61700974e95cc5df13dedfe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process animation (progress current frame if necessary) <br /></td></tr>
<tr class="separator:a0a722eafd61700974e95cc5df13dedfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae545d15364b5ecb0f4bc0d5cb5629ba4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#ae545d15364b5ecb0f4bc0d5cb5629ba4">contains</a> (const glm::vec3 point) const</td></tr>
<tr class="memdesc:ae545d15364b5ecb0f4bc0d5cb5629ba4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the bounding boxes of this object contain a given point.  <a href="classsmall3d_1_1_scene_object.html#ae545d15364b5ecb0f4bc0d5cb5629ba4">More...</a><br /></td></tr>
<tr class="separator:ae545d15364b5ecb0f4bc0d5cb5629ba4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cdbb5e24f06458dc5451acec3e373b7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a0cdbb5e24f06458dc5451acec3e373b7">containsCorners</a> (<a class="el" href="classsmall3d_1_1_scene_object.html">SceneObject</a> otherObject) const</td></tr>
<tr class="memdesc:a0cdbb5e24f06458dc5451acec3e373b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the bounding boxes of this object contain a corner of the bounding boxes of another object.  <a href="classsmall3d_1_1_scene_object.html#a0cdbb5e24f06458dc5451acec3e373b7">More...</a><br /></td></tr>
<tr class="separator:a0cdbb5e24f06458dc5451acec3e373b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a1628b6b7c19ef46e3d42d7973c86a666"><td class="memItemLeft" align="right" valign="top">glm::vec3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a1628b6b7c19ef46e3d42d7973c86a666">offset</a> = glm::vec3(0.0f, 0.0f, 0.0f)</td></tr>
<tr class="separator:a1628b6b7c19ef46e3d42d7973c86a666"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a765d692291b6cb49160481f05cbae39b"><td class="memItemLeft" align="right" valign="top">glm::vec3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#a765d692291b6cb49160481f05cbae39b">rotation</a> = glm::vec3(0.0f, 0.0f, 0.0f)</td></tr>
<tr class="separator:a765d692291b6cb49160481f05cbae39b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af15e5d5db4d48fe7bf9a6b9d3d16975d"><td class="memItemLeft" align="right" valign="top"><a id="af15e5d5db4d48fe7bf9a6b9d3d16975d"></a>
<a class="el" href="classsmall3d_1_1_bounding_box_set.html">BoundingBoxSet</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsmall3d_1_1_scene_object.html#af15e5d5db4d48fe7bf9a6b9d3d16975d">boundingBoxSet</a></td></tr>
<tr class="memdesc:af15e5d5db4d48fe7bf9a6b9d3d16975d"><td class="mdescLeft">&#160;</td><td class="mdescRight">The bounding boxes for the object, used for collision detection. <br /></td></tr>
<tr class="separator:af15e5d5db4d48fe7bf9a6b9d3d16975d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a70538530bc36e033e360880ef311df61"><td class="memItemLeft" align="right" valign="top"><a id="a70538530bc36e033e360880ef311df61"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>Renderer</b></td></tr>
<tr class="separator:a70538530bc36e033e360880ef311df61"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>An object that appears on the 3D scene. It is made up of a <a class="el" href="classsmall3d_1_1_model.html" title="A 3D model. It can be loaded from a WavefrontFile or GlbFile. It can also be constructed procedurally...">Model</a>, together with information for positioning, rotation and collision detection. Skeletal animation is supported for models loaded from glTF files. A constructor that loads multiple Wavefront files to construct a frame-based animation sequence is also provided. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a1bd665f32145f9b16fc89df98c8713a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1bd665f32145f9b16fc89df98c8713a9">&#9670;&nbsp;</a></span>SceneObject() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">small3d::SceneObject::SceneObject </td>
          <td>(</td>
          <td class="paramtype">const std::string&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string&#160;</td>
          <td class="paramname"><em>modelPath</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>modelMeshName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>boundingBoxSubdivisions</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>File-loading constructor, supporting Wavefront and glTF .glb files. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>The name of the object </td></tr>
    <tr><td class="paramname">modelPath</td><td>The path to the file</td></tr>
    <tr><td class="paramname">modelMeshName</td><td>The name of the mesh / object in the file which will be loaded as the model ("" to load the first object found). </td></tr>
    <tr><td class="paramname">boundingBoxSubdivisions</td><td>How many times to subdivide the initially created bounding box, getting more accurate collision detection at the expense of performance. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a2e9dfda6e679bbacce88ffdb63685e7e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2e9dfda6e679bbacce88ffdb63685e7e">&#9670;&nbsp;</a></span>SceneObject() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">small3d::SceneObject::SceneObject </td>
          <td>(</td>
          <td class="paramtype">const std::string&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string&#160;</td>
          <td class="paramname"><em>modelPath</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&#160;</td>
          <td class="paramname"><em>numFrames</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&#160;</td>
          <td class="paramname"><em>startFrameIndex</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint32_t&#160;</td>
          <td class="paramname"><em>boundingBoxSubdivisions</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Wavefront-only (.obj) loading constructor that also supports loading frame-based animation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>The name of the object </td></tr>
    <tr><td class="paramname">modelPath</td><td>The path to the file containing the object's model. When animating (also see numFrames parameter) it is assumed that multiple files will be loaded, the name of which contains a 6 digit suffix (after an underscore) representing the animation sequence, and terminates with the .obj extension. This is also the format used by Blender when exporting animations to Wavefront files. When loading multiple models for animation do not enter a full filename. Skip the suffix and the extension. For example an animation sequence made up of files named frog_000001.obj, frog_000002.obj etc. should be loaded using the parameter "directory/frog" here. For exporting animations from Blender to a series of Wavefront files in a way that will allow this constructor class to load them, select "Animation" and "Apply Modifiers" when exporting to Wavefront.</td></tr>
    <tr><td class="paramname">numFrames</td><td>The number of frames, if the object is animated. A single animation sequence is supported per object and the first frame is considered to be the non-moving state.</td></tr>
    <tr><td class="paramname">startFrameIndex</td><td>The index number in the filename of the first file of the animation sequence. The default value is 1. If not loading an animation sequence, this parameter is ignored. </td></tr>
    <tr><td class="paramname">boundingBoxSubdivisions</td><td>How many times to subdivide the initially created bounding box, getting more accurate collision detection at the expense of performance. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ae545d15364b5ecb0f4bc0d5cb5629ba4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae545d15364b5ecb0f4bc0d5cb5629ba4">&#9670;&nbsp;</a></span>contains()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool small3d::SceneObject::contains </td>
          <td>(</td>
          <td class="paramtype">const glm::vec3&#160;</td>
          <td class="paramname"><em>point</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if the bounding boxes of this object contain a given point. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">point</td><td>The point </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the point is contained in the bounding boxes of the object, False otherwise. </dd></dl>

</div>
</div>
<a id="a0cdbb5e24f06458dc5451acec3e373b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0cdbb5e24f06458dc5451acec3e373b7">&#9670;&nbsp;</a></span>containsCorners()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool small3d::SceneObject::containsCorners </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classsmall3d_1_1_scene_object.html">SceneObject</a>&#160;</td>
          <td class="paramname"><em>otherObject</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if the bounding boxes of this object contain a corner of the bounding boxes of another object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">otherObject</td><td>The other object. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the bounding boxes of this object contain a corner of the bounding boxes of another object, False otherwise. </dd></dl>

</div>
</div>
<a id="a990a1b6f6f3ab08fd71f5c4a220afc4c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a990a1b6f6f3ab08fd71f5c4a220afc4c">&#9670;&nbsp;</a></span>getModel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classsmall3d_1_1_model.html">Model</a> &amp; small3d::SceneObject::getModel </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the object's model. </p>
<dl class="section return"><dt>Returns</dt><dd>The object's model </dd></dl>

</div>
</div>
<a id="ae18cf681f49f719fa77f9b83bdb88da8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae18cf681f49f719fa77f9b83bdb88da8">&#9670;&nbsp;</a></span>getName()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::string small3d::SceneObject::getName </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the name of the object. </p>
<dl class="section return"><dt>Returns</dt><dd>The name of the object </dd></dl>

</div>
</div>
<a id="ac5597d21a46f7208fc92377f9cc8b631"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5597d21a46f7208fc92377f9cc8b631">&#9670;&nbsp;</a></span>setFrameDelay()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void small3d::SceneObject::setFrameDelay </td>
          <td>(</td>
          <td class="paramtype">const int&#160;</td>
          <td class="paramname"><em>delay</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the animation speed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">delay</td><td>The delay between each animation frame, expressed in number of game frames </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a1628b6b7c19ef46e3d42d7973c86a666"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1628b6b7c19ef46e3d42d7973c86a666">&#9670;&nbsp;</a></span>offset</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">glm::vec3 small3d::SceneObject::offset = glm::vec3(0.0f, 0.0f, 0.0f)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Offset (position) of the object </p>

</div>
</div>
<a id="a765d692291b6cb49160481f05cbae39b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a765d692291b6cb49160481f05cbae39b">&#9670;&nbsp;</a></span>rotation</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">glm::vec3 small3d::SceneObject::rotation = glm::vec3(0.0f, 0.0f, 0.0f)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Rotation of the object (on x, y, z axes respectively) </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="_scene_object_8hpp_source.html">SceneObject.hpp</a></li>
<li>SceneObject.cpp</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="http://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.8.20
</small></address>
</body>
</html>
